Method of speech recognition resistant to convolutive distortion and additive distortion

ABSTRACT

A speech recognizer operating in both ambient noise (additive distortion) and microphone changes (convolutive distortion) is provided. For each utterance to be recognized the recognizer system adapts HMM mean vectors with noise estimates calculated from pre-utterance pause and a channel estimate calculated using an Estimation Maximization algorithm from previous utterances.

FIELD OF INVENTION

[0001] This invention relates to speech recognition and more particularly to operation in an ambient noise environment (additive distortion) and channel changes (convolutive distortion) such as microphone changes.

BACKGROUND OF INVENTION

[0002] A speech recognizer trained with office environment speech data and operating in a mobile environment may fail due at least to at least two distortion sources. A first is background noise such as from a computer fan, car engine, road noise. The second is microphone changes such as from hand-held to hands-free or from the position to the mouth. In mobile applications of speech recognition, both microphone and background noise are subject to change. Therefore, handling simultaneously the two sources of distortion is critical to performance.

[0003] The recognition failure can be reduced by retraining the recognizer's acoustic model using large amounts of training data collected under conditions as close as possible to the testing data. There are several problems associated with this approach.

[0004] Collecting a large database to train speaker-independent HMMs is very expensive.

[0005] It is not easy to determine if the collected data can cover all future noisy environments.

[0006] The recognizer has to spend large number of parameters to cover collectively the different environments.

[0007] The average of a variety of data results in flat distribution of models, which degrades the recognition of clean speech.

[0008] Cepstral Mean Normalization (CMN) removes utterance mean and is a simple and efficient way of dealing with convolutive distortion such as telephone channel distortion. This is described by B. Atal in “Effectiveness of Linear Prediction Characteristics of the Speech Wave for Automatic Speaker Identification and Verification”, Journal of Acoust. Society America, 55:1304-1312,1974. Spectral subtraction (SS) reduces background noise in the feature space. Described by S. F. Boll in “Suppression of Acoustic Noise in Speech Using Spectral Subtraction”, IEEE Trans. On Acoustics Speech and Signal Processing, ASSP-27(2):113-120, April 1979. Parallel Model Combination (PMC) gives an approximation of speech models in noisy conditions from noise-free speech models and noise estimates. Described by M. J. F. Gales and S. Young in “An Improved Approach to the Hidden Markov Model Decomposition of Speech and Noise”, In Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing, Volume I, pages 233-236, U.S.A., April 1992. The technique is effective for speech recognition in noisy environments with a fixed microphone. These techniques do not require any training data. However, they only deal with either convolutive (channel, microphone) distortion or additive (background noise) distortion.

[0009] Joint compensation of additive noise and convolutive noise can be achieved by introduction of a channel model and a noise model. A spectral bias for additive noise and a cepstral bias for convolutive noise are described in article entitled “A General Joint Additive and Convolutive Bias Compensation Approach Applied to Noisy Lombard Speech Recognition” in IEEE Transactions on Speech and Audio Processing by M. Afify, Y. Gong and J. P. Haton, in 6(6):524-538, November 1998. The two biases can be calculated by application of EM (estimation maximization) in both spectral and convolutive domains. The magnitude response of the distortion channel and power spectrum of the additive noise can be estimated by an EM algorithm, using a mixture model of speech in the power spectral domain. This is described in an article entitled “Frequency-Domain Maximum Likelihood Estimation for Automatic Speech Recognition in Additive and Convolutive Noises” by Y. Zhao in IEEE Transaction on Speech and Audio Processing. 8(3):255-266, May 2000. A procedure to calculate the convolutive component, which requires rescanning of training data is presented by J. L. Gauvain et al. in an article entitled “Developments in Continuous Speech Dictation Using the ARPA NAB News Task” published in Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing, pages 73-76, Detroit, 1996. Solution of the convolutive component by steepest descent methods is reported in article of Y. Minami and S. Furui entitled “A Maximum Likelihood Procedure for a Universal Adaptation Method Based on HMM Composition” published in Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing, pages 128-132, Detroit, 1995. The method described by Y. Minami and S. Furui entitled “Adaptation Method Based on HMM Composition and EM Algorithm” in Proceedings of IEEE International Conference on Acoustics, Speech and Signal Processing, pages 327-330, Atlanta 1996 needs additional universal speech models, and re-estimation of channel distortion with the universal models when the channel changes. A technique presented by M. J. F. Gales in Technical Report TR-154, CUED/F-INFENG, entitled “PMC for Speech Recognition in Additive and Convolutive Noise” December 1993 needs two passes of the test utterance; e.g. parameter estimation followed by recognition, several transformations between cepstral and spectral domains, and a Gaussian mixture model for clean speech.

[0010] Alternatively, the nonlinear changes of both type of distortions can be approximated by linear equations, assuming that the changes are small. A Jacobian approach described by S. Sagayama et al. in an article entitled “Jacobian Adaptation of Noisy Speech Models” in Proceedings of IEEE Automatic Speech Recognition Workshop, pages 396-403, Santa Barbara, Calif., USA, December 1997, IEEE Signal Processing Society. This Jacobian approach models speech model parameter changes as the product of a Jacobian matrix and the difference in noisy conditions, and statistical linear approximation described by N. S. Kim are along this direction. The statistical linear approximation of Kim is found in IEEE Signal Processing Letters, 5(1): 8-10, January 1998 and entitled “Statistical Linear Approximation for Environment Compensation.”

[0011] Finally, Maximum Likelihood Linear Regression (MLLR) transforms HMM parameters to match the distortion factors. See article of C. J. Leggetter et al entitled “Maximum Likelihood Linear Regression for Speaker Adaptation of Continuous Density HMMs”, in Computer, Speech and language, 9(2):171-185,1995. MLLR does not model explicitly channel and background noise, but approximates their effect by piece-wise linearity. When given enough data, it is effective for both sources. However, it requires training data and may introduce dependence to the speaker.

[0012] In order to make speaker-independent system robust to a wide variety of noises and channel distortions, a new method is needed that handles simultaneously both noise and channel distortions.

SUMMARY OF INVENTION

[0013] In accordance with one embodiment of the present invention speaker-independent speech recognition is provided under simultaneous presence of channel distortion and changing additive distortion such as background noise by identifying one component for channel and one component for additive distortion such as noise and using these components to derive a speech model set for operating in the presence of both types of distortions.

DESCRIPTION OF DRAWINGS

[0014]FIG. 1 illustrates a speech recognition system according to one embodiment of the present invention.

[0015]FIG. 2 is a flow chart of the operation of the processor in FIG. 1.

[0016]FIG. 3 illustrates past utterances used in recognizing current utterances;

[0017]FIG. 4 plots the bias estimate averaged over all testing utterances.

DESCRIPTION OF PREFERRED EMBODIMENTS OF THE PRESENT INVENTION

[0018] Before describing the joint compensation for channel and noise the influence of channel and noise is reviewed and explained. A speech signal x(n) can only be observed in a given acoustic environment. An acoustic environment can be modeled by a background noise bN(n) and a distortion channel h(n). For typical mobile speech recognition b′(n) consists of noise from office, vehicle engine and road noises, and h(n) consists of microphone type and relative position to the speaker. Let y(n) be the speech observed in the environment defined by bN(n) and h(n):

y(n)=(x(n)+bN(n))*h(n).  (1)

[0019] In typical speech recognition applications, bN(n) cannot be measured directly. What is available is bN(n)*h(n), which can be measured during speech pauses. Let b(n)=bN (n)*h(n), our model of distorted speech becomes:

y(n)=x(n)*h(n)+b(n).  (2)

[0020] Or, applying the Discrete Fourier Transform (DFT) to both sides of equation 2:

Y(k)=X(k)H(k)+B(k)  (3)

[0021] Representing the above quantities in logarithmic scale is the following:

Y ^(l) Δg(X ^(l) ,H ^(l) ,B ^(l))  (4)

[0022] Where

g(X ^(l) ,H ^(l) ,B ^(l))(k)=log(exp(X ^(l)(k)+H ^(l)(k))+exp(B ^(l)(k)))  (5)

[0023] Assuming the log-normal distribution and ignoring the variance, we have

E{Y ^(l) }Δ{circumflex over (m)} ^(l) =g(m ^(l) ,H ^(l) ,B ^(l))  (6)

[0024] Where

[0025] m^(l) is the original Gaussian mean vector, and

[0026] {circumflex over (m)}^(l) is the Gaussian mean vector compensated for the distortions caused by channel and environment noise.

[0027] Estimation of Noise Components

[0028] For estimation of the noise component, from equation 2, with x(n)=0 we have:

y(n)=b(n)  (7)

[0029] which means that the filtered noise b(n) can be observed during a speech pause. Given that y(n) of the window t is typically represented in MFCC (mel-scaled cepstrum coeffients) domain as y_(t), one can calculate an estimate of noise in the log domain B^(l) as the average of P noise frames in the log domain: $\begin{matrix} {B^{1} = {\frac{1}{P}{\sum\limits_{t = 0}^{P}{{DFT}\left( y_{t} \right)}}}} & (8) \end{matrix}$

[0030] Estimation of Channel Component

[0031] It is an object of the present invention to derive the HMMs of Y under both additive noise and convolutive distortions. The key problem is to obtain an estimate of the channel H^(l). It is assumed that some speech data recorded in the noisy environment is available, and that the starting HMM models for X are trained on clean speech in the MFCC feature space. The speech model is continuous density Gaussian mixture HMMs. In the following, only the mean vectors of the original model space will be modified.

[0032] Let R be the number of utterances available for training a Hidden Markov Model. Let T_(r) be the number of frames in utterance r. Let Ω_(s) be the set of states of an HMM. Let Ω_(m) be the set of mixing components of a state. The method for H^(l) is iterative which, at iteration i+1, gives a new estimate H^(l) _([I+l]) of H^(l) using: $\begin{matrix} {H_{\lbrack{i + 1}\rbrack}^{l} = {H_{\lbrack i\rbrack}^{1} - \frac{\sum\limits_{r = 1}^{R}{\sum\limits_{t = 1}^{T^{r}}\left\lbrack {{\sum\limits_{j \in {\Omega \quad s}}{\sum\limits_{k \in {\Omega \quad m}}{{\,_{\gamma_{t}}^{r}\left( {j,k} \right)}{g\left( {m_{j,k}^{1},H_{\lbrack i\rbrack}^{1},B^{1}} \right)}}}} - \quad {{DFT}\left( o_{t}^{r} \right)}} \right\rbrack}}{\sum\limits_{r = 1}^{R}{\sum\limits_{t = 1}^{T^{r}}{\sum\limits_{j\quad \in {\Omega \quad s}}{\sum\limits_{k \in {\Omega \quad m}}{{\,_{\gamma_{t}}^{r}\left( {j,k} \right)}{h\left( {m_{j,k}^{1},H_{\lbrack i\rbrack}^{1},B^{1}} \right)}}}}}}}} & (9) \end{matrix}$

[0033] where (_(t) ^(r)(j,k) is the joint probability of state j and mixing component k at time t of utterance r, given observed speech o_(t) ^(r) and current model parameters, and $\begin{matrix} {{{h\left( {X^{l},H^{l},B^{l}} \right)}(k)} = \frac{\eta (k)}{{\eta (k)} + 1}} & (10) \end{matrix}$

[0034] with

η(k)=exp(X ^(l)(k)+H ^(l)(k)−B ^(l)(k))  (11)

[0035] η(k) is called the generalized SNR.

[0036] As the initial condition, we set: $\begin{matrix} {H_{\lbrack 0\rbrack}^{1} = 0} & (12) \end{matrix}$

[0037] Compensation for Time Derivatives

[0038] Typical speech recognizers are augmented feature vectors, each of which consists of MFCC and their time derivatives. The time derivative of MFCC can be also compensated under the present framework. The compensated first order time derivative of MFCC {dot over (Y)}^(C) is calculated from the original first order time derivative of MFCC {dot over (Y)}^(l): $\begin{matrix} {{\overset{.}{Y}}^{c} = {{IDFT}\left( {\frac{\eta (k)}{{\eta (k)} + 1}{\overset{.}{Y}}^{l}} \right)}} & (13) \end{matrix}$

[0039] The second order time derivative is calculated as: $\begin{matrix} {{\overset{¨}{Y}}^{c} = {{IDFT}\left( {\frac{\eta (k)}{{\eta (k)} + 1}\left( {{\frac{1}{{\eta (k)} + 1}\left( {\overset{.}{Y}}^{1} \right)^{2}} + {\overset{¨}{Y}}^{l}} \right)} \right)}} & (14) \end{matrix}$

[0040] Compensation Procedure

[0041] Recognizing an utterance requires an estimate of channel and noise, as in Equation 5. Typically, the channel is fixed once a microphone and transmission channel are chosen, and noise can be varying from utterance to utterance.

[0042] In accordance with the preferred embodiment of the present invention the estimate comprises the channel estimate obtained from the previously recognized utterances and the noise estimate is obtained from the pre-utterance pause of the test utterance. Referring to FIG. 1 the recognizer system 10 includes a recognizer subsystem 11, Hidden Markov Models H 13, a model adapter subsystem 17, a noise sensor and a microphone 15 to produce recognized speech output from the recognizer 11. The model adapter subsystem 17 includes an estimator 19 and a model adapter 21. The noise sensor 17 detects background noise during a preutterance pause. The estimator 19 estimates the background noise (additive parameters) and convolutive parameters. The convolutive and additive estimates are applied to the model adapter 21. The adapter 21 modifies the HMM models 13 and the adapted models are used for the speech recognition in the recognizer 11. The model adapter 21 includes a processor that operates on the sensed noise, performs the estimates and modifies the models from the HMM source 13.

[0043] The system recognizes utterances grouped speaker by speaker. The bias is reestimated after recognizing each test utterance, and is initialized to zero at beginning of the recognition of all speakers.

[0044] As the recognizer does not have to wait for channel estimation, which would introduce at least a delay of the duration of the utterance, the recognition result is available as soon as the utterance is completed. The processor in the model adapter subsystem 17 operates according to the steps as follows:

[0045] 1. Set channel H^(l) to zero.

[0046] 2. Start recognition of the current utterance.

[0047] 3. Estimate background noise N^(l) with pre-utterance pause.

[0048] 4. For each HMM, modify Gaussian distributions with current H^(l) and N^(l) estimates

[0049] 4.1 Static MFCC (Equation 6)

[0050] 4.2 First order dynamic MFCC (Equation 13)

[0051] 4.3 Second order dynamic MFCC (Equation 14)

[0052] 5. Recognize the current utterance using the adapted HMM

[0053] 6. Estimate channel parameter with alignment information (Equation 9)

[0054] 6.1 For each segment r

[0055] 6.1.1 Calculation of γ_(t) ^(r) (j,k)

[0056] 6.1.2 Accumulate statistics

[0057] 6.1.3 Update channel parameters

[0058] 6.2 H^([I+l])≠H^(l) _([i]) goto 6.1

[0059] 7. Go to step 2.

[0060] In step 1 the channel H^(l) is set to zero. In step 2 the current utterance is recognized. The background noise is estimated using sensed noise during a preutterance pause in step 3. For each HMM modify Gaussian distribution with current channel H^(l) and noise N^(l) estimates by compensating static MFCC using E{Y^(l)}Δ{circumflex over (m)}^(l)=g(m^(l), H^(l), B^(l)) from equation 6 where m^(l) is the original Gaussian mean vector and {circumflex over (m)} is the Gaussian mean vector compensated for the distortions caused by channel and environment noise and compensating for time derivatives by compensating first order dynamic MFCC using ${{\overset{.}{Y}}^{c} = {{IDFT}\left( {\frac{\eta (k)}{{\eta (k)} + 1}{\overset{.}{Y}}^{l}} \right)}}\quad$

[0061] equation 13 and compensating second order dynamic MFCC using ${\overset{¨}{Y}}^{c} = {{IDFT}\left( {\frac{\eta \quad (k)}{{\eta (k)} + 1}\left( {{\frac{1}{{\eta (k)} + 1}\left( {\overset{.}{Y}}^{l} \right)^{2}} + {\overset{¨}{Y}}^{l}} \right)} \right)}$

[0062] from equation 14. The compensated first order derivative of MFCC {dot over (Y)}^(C) is calculated from the original first order time derivative {dot over (Y)}^(l). The next step 5 is to recognize the current utterance using the modified or adapted HMM models. In step 6 is the estimation of the channel component with alignment information using an iterative method which at iteration i+1 gives a new estimate H^(l) _([i+1]) of H^(l) using: $\begin{matrix} {{H_{\lbrack{i + 1}\rbrack}^{l} = {H_{\lbrack i\rbrack}^{1} - \frac{\sum\limits_{r = 1}^{R}{\sum\limits_{t = 1}^{T^{r}}\left\lbrack {{\sum\limits_{j \in {\Omega \quad s}}{\sum\limits_{k \in {\Omega \quad m}}{{\,_{\gamma_{t}}^{r}\left( {j,k} \right)}{g\left( {m_{j,k}^{1},H_{\lbrack i\rbrack}^{1},B^{1}} \right)}}}} - \quad {{DFT}\left( o_{t}^{r} \right)}} \right\rbrack}}{\sum\limits_{r = 1}^{R}{\sum\limits_{t = 1}^{T^{r}}{\sum\limits_{j\quad \in {\Omega \quad s}}{\sum\limits_{k \in {\Omega \quad m}}{{\,_{\gamma_{t}}^{r}\left( {j,k} \right)}{h\left( {m_{j,k}^{1},H_{\lbrack i\rbrack}^{1},B^{1}} \right)}}}}}}}}{{or}\quad {equation}\quad 9.}} & \quad \end{matrix}$

[0063] The operations in step 6 include for each segment of utterance r, calculating γ_(t) ^(r)(j,k) accumulating statistics and update channel parameters. γ_(t) ^(r)(j,k) is the joint probability of state j and mixing component k at time t of the utterance r, given observed speech o_(t) ^(r) and current model parameters, and ${{h\left( {X^{l},H^{l},B^{l}} \right)}(k)} = \frac{\eta (k)}{{\eta (k)} + 1}$

[0064] with

η(k)=exp(X ^(l)(k)+H ^(l)(k)−B ^(l)(k)).

[0065] If H^(l) _(i+1)≠the final iteration of segment r H^(l) _([i ]) then repeat the steps of the calculation, accumulate and update.

[0066] In step 7 the channel estimate repeats for the next current utterance. As illustrated in FIG. 3 the estimates of the channel and noise parameters from past utterances are used for the recognition of the current utterance. The quantities allowing the determination of optimum channel estimate and obtained during the recognition of these past utterances are carried over to the current estimate.

[0067] Experiments

[0068] The database is recorded in-vehicle using an AKG M2 hands-free distant talking microphone, in three recording sessions: parked (car parked, engine off), stop and go (car driven on a stop and go basis), and highway (car driven on a highway). In each session 20 speakers (10 male) read 40 sentences each, giving 800 utterances. Each sentence is either 10, 7, or 4 digit sequence, with equal probabilities. The database is sampled at 8 kHz, with MFCC analysis and frame rate of 20 milliseconds. From the speech, MFCC of the order of 10 is derived.

[0069] HMMs used in all experiments are trained in TIDIGITS clean speech data. The HMMs contain 1957 mean vectors, and 270 diagonal variances. Evaluated on TIDIGIT test set, the recognizer gives 0.36% word error rate (WER).

[0070] Given the above HMM models, the hands-free database presents severe mismatch:

[0071] The microphone is distant talking band-limited, as compared to a high quality microphone used to collect TIDIGITS.

[0072] There is a substantial amount of background noise due to car environment, with SNR reaching 0 dB for the highway condition.

[0073] It is therefore very challenging to see the performance of different compensation approaches on this database.

[0074] To improve the performance in noisy environments, the variances of the Gaussian PDFs can be MAP adapted to some slightly noisy data, e.g. the parked-eval data. Such adaptation will not affect recognition of clean speech, but will reduce variance mismatch between HMMs and the noisy speech.

[0075] Ideally, the bias corresponding to microphone should be independent of the testing utterance. However, due to limited data for bias estimation, speaker-specificity, and background noise, the actual estimate may vary from utterance to utterance.

[0076]FIG. 4 plots the estimated H^(l) for the three driving conditions, averaged over each condition. We observe that:

[0077] In general the estimates from different driving conditions are in agreement, which shows that the estimation is quite independent of noise level.

[0078] The curves show some divergence at low frequencies, which can be attributed to the larger difference in energy among driving conditions.

[0079] The new algorithm is referred to as JAC (joint compensation of additive noise and convolutive distortion). Table 1 shows that:

[0080] Compared to noise-free recognition WER (0.36%), without any compensation (BASELINE) the recognition performance degrades severely. TABLE 1 word error rate (%) as function of driving conditions and compensation methods. PARKED CITY DRIVING HIGHWAY BASELINE 1.38 30.3 73.2 CMN 0.59 18.8 51.7 PMC 1.74 6.29 17.0 JAC 0.43 1.26 5.02

[0081] CMN effectively reduces the WER for parked data, but is not effective for driving conditions where additive noise becomes dominant.

[0082] PMC substantially reduces the WER for driving conditions, but gives poor results for parked data where microphone mismatch is dominant.

[0083] JAC gives lower WER than non-JAC methods.

[0084] Although preferred embodiments have been described, it will be apparent to those skilled in the relevant art that various modifications, additions, substitutions and the Ike can be made without departing from the spirit of the invention and these are therefore considered to be within the scope of the invention as defined in the following claims. 

1. A speech recognizer comprising: a microphone for receiving speech utterances and pauses; models for recognizing speech; a model adjustor responsive to said models for providing adjusted models; said adjusted models having their parameters simultaneously adjusted to handle distortion introduced by convolutive and additive components; and a recognizer coupled to said microphone and responsive to adjusted models for recognizing speech.
 2. The recognizer of claim 1 wherein said model adjustor identifies and measures channel distortion and additive distortion from incoming signals received at said microphone during speech and non-speech segments.
 3. The recognizer of claim 2 wherein said additive distortion is determined by calculating the average of log-domain pre-utterance input frames.
 4. The recognizer of claim 2 wherein the convolutive distortion is calculated iteratively and the new convolutive distortion is calculated by subtracting a log-domain bias from the current one.
 5. The recognizer of claim 4 wherein said bias is a normalized difference between compensated mean vectors that are weighted by their closeness to the input frames.
 6. The recognizer of claim 5 wherein said recognizer compensates for the distortions by modifying mean vectors by compensating static MFCC, compensating first order dynamic MFCC and compensating for second order MFCC.
 7. The recognizer of claim 1 wherein said model adjustor includes compensating for the distortions by modifying mean vectors by compensating static MFCC, compensating first order dynamic MFCC and compensating for second order MFCC.
 8. The recognizer of claim 1 wherein said model adjustor includes recognizing speech utterances one by one and performing adjustment of internal parameters at the same time without additional data collection.
 9. The recognizer of claim 1 wherein said model adjustor identifies and measures the convolutive and additive components from incoming signals during speech and non-speech segments.
 10. The recognizer of claim 9 wherein said model ajustor uses measured convolutive and additive components from past utterances in determining a current utterance.
 11. A method of speech recognition comprising the steps of: receiving input speech and non-speech at a microphone, providing initial HMM models; recognizing speech utterances one by one and performing adjustment of internal parameters at the same time without additional data collection wherein said recognizing step includes modifying mean vectors of said HMM models with current estimates compensating for static MFCC, first order dynamic MFCC and second order MFCC.
 12. The method of claim 11 wherein said recognizing step includes the step of calculating the channel or microphone component iteratively and in each step the new channel component is calculated by subtracting a log-domain bias from the current one.
 13. The method of claim 12 wherein said bias is a normalized difference between compensated mean vectors that are weighted by their closeness to the input frames.
 14. A speech recognizer operating in both ambient noise (additive distortion) and channel changes (convolutive distortion) comprising: HMM models and a model adjustor coupled to a recognizer responsive to said HMM models for each utterance to be recognized adapting HMM mean vectors with noise estimates calculated from pre-utterance pause and a channel estimate calculated using an Estimation Maximization algorithm from previous utterances.
 15. A method of speech recognition comprising the steps of: receiving input speech and non-speech at a microphone, providing initial HMM models; recognizing speech utterances one by one and performing adjustment of internal parameters for convolutive distortion and additive distortion at the same time without additional data collection.
 16. The method of claim 15 wherein said recognizing step includes modifying mean vectors of said HMM models with current estimates compensating for static MFCC, first order dynamic MFCC and second order MFCC.
 17. The method of claim 15 including the step of carrying the quantities allowing the determination of channel estimate obtained during determination of past utterances to a current utterance. 